﻿ IF EXISTS (SELECT * FROM sysobjects WHERE type = 'P' AND name = 'EstacionSave')
	BEGIN
		DROP  Procedure  EstacionSave
	END
GO

CREATE PROCEDURE EstacionSave
	(	
		@id						AS INT,
		@nombre					AS VARCHAR(50),
		@empresaId				AS INT,
		@sucursalId				AS INT,
		@consecutivoFactura		AS INT,
		@consecutivoDevolucion	AS INT,		
		@impresoraFacturas		AS VARCHAR(100),
		@impresoraDevoluciones	AS VARCHAR(100),		
		@impresoraTiquetes		AS VARCHAR(100),
		@user					AS VARCHAR(30)		
	)	
AS
BEGIN	
	SET NOCOUNT ON

	DECLARE @currentDate AS DATETIME
	SET @currentDate = GETDATE()
	
	IF EXISTS(SELECT 1 FROM Estacion WHERE EstacionId = @id)
	BEGIN
		UPDATE Estacion
		SET Nombre = @nombre,
			ConsecutivoFactura = @consecutivoFactura,
			ConsecutivoDevolucion = @consecutivoDevolucion,
			ImpresoraFacturas = @impresoraFacturas,
			ImpresoraDevoluciones = @impresoraDevoluciones,
			ImpresoraTiquetes =  @impresoraTiquetes,
			Activo = 1,
			FechaModificacion = @currentDate,
			ModificadoPor = @user		
		WHERE EstacionId = @id
	END
	ELSE
	BEGIN	
		SELECT @id = ISNULL(MAX(EstacionId),0)+1 FROM Estacion

		INSERT INTO Estacion
			(EstacionId, Nombre, ConsecutivoFactura, ConsecutivoDevolucion, ImpresoraFacturas, ImpresoraDevoluciones, ImpresoraTiquetes, Activo, FechaCreacion, FechaModificacion, ModificadoPor, EmpresaId, SucursalId)
		VALUES
			(@id, @nombre, @consecutivoFactura, @consecutivoDevolucion, @impresoraFacturas, @impresoraDevoluciones, @impresoraTiquetes, 1, @currentDate, @currentDate, @user, @empresaId, @sucursalId)	
	END
	
	SET NOCOUNT OFF
END 